<?php
namespace app\api\controller\fumin;

use think\Controller;

class Base extends Controller {
    public function index() {
        return $this->fetch();
    }
    
    private $cfg = array(
        'merchantId'       => '10005', // 商户号
        'md5key'        => '4ec0824993065ff9526b7c8a16852258', 
        'orderUrl'      => 'http://192.168.3.46:8080/pay/fumin/order/index', // 下单地址
        'orderQueryUrl' => 'http://192.168.3.46:8080/pay/fumin/orderquery/index', // 下单地址
    );
    
    public function C($cfgName) {
        return $this->cfg[$cfgName];
    }
   
    public function createSign($list) {
        ksort($list);
        $md5str = '';
        foreach ($list as $key => $val) {
            if(!empty($val)){
                $md5str = $md5str . $key . '=' . $val . '&';
            }
        }
        $sign = md5($md5str . 'key=' . $this->C('md5key'));
        return $sign;
    }
    
    // 使用post的传输
    public function curl($url, $data) {
        // 启动一个CURL会话
        $ch = curl_init();
        // 设置curl允许执行的最长秒数
        curl_setopt($ch, CURLOPT_TIMEOUT, 120);
        // 忽略证书
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
        // 获取的信息以文件流的形式返回，而不是直接输出。
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_URL, $url);
        // 发送一个常规的POST请求。
        curl_setopt($ch, CURLOPT_POST, 1);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
        curl_setopt($ch, CURLOPT_HEADER, 0); // 是否需要头部信息（否）
        // 执行操作
        $result = curl_exec($ch);

        if($result) {
            curl_close($ch);
            // 将返回json转换为数组
            $arrResult = json_decode($result, true);
//            if(!is_array($arrResult)) {
//                $arrResult['errcode']=1;
//                $arrResult['msg']='服务器繁忙，请稍候重试';
//            }
        } else {
            $arrResult = curl_error($ch);
            curl_close($ch);
//            $arrResult['errcode']=1;
//            $arrResult['msg']='服务器繁忙，请稍候重试';
        }
        // 返回数据
        return json_encode($arrResult, 320); 
    }
}
